Microcontrollers are single chip systems on a chip comprising a central processing unit (CPU), memory, I/O interfaces and a plurality of different peripheral devices such as serial interfaces, analog-to-digital converters. PWM modulators, timers, etc. Generally, many applications do not require a lot of processing power. Thus to keep costs low, certain microcontrollers, such as 8-bit microcontrollers with a limited amount of program memory and data memory often are implemented without any type of external or internal interrupts or with a limited number of interrupts due to the fact that such interrupt logic requires significant real estate on a die. For example a baseline microcontroller family of a manufacturer may include devices that do not comprise any interrupt capability or only a single interrupt. A mid-range family may be designed to allow for a single interrupt and an associated interrupt controller that receives a plurality of interrupts and generates an output signal fed to the single interrupt input of the CPU. Both of these microcontroller types may comprise a CPU with single interrupt input wherein when asserted causes the program execution to finish a currently pending instruction and then branch to a defined address (interrupt vector), e.g. address 0004h. A higher end family of microcontrollers of the manufacturer may include devices with a CPU that has two interrupt inputs one being assigned a low priority and one being assigned a high priority as well as an interrupt controller for distributing interrupts from various sources to these two interrupt inputs of the CPU.
The present application thus focuses on microcontrollers comprising a central processing unit that has a limited number of interrupts, e.g. a single or two interrupt inputs and associated interrupt controller with a limited interrupt functionality. In many applications this may still not be sufficient and a higher end device, for example a 16-bit or 32-bit microcontroller must be chosen due to the fact that the interrupt capabilities of the 8-bit microcontrollers are too limiting. Also, if such microcontrollers are intended to have an increased number of peripherals the central processing unit may not be able to support an associated interrupt function due to the limited interrupt functionality.